通过间歇性聚类点过程学习社交网络用户行为模式
钟凯名,复旦大学大数据学院应用统计专业在读硕士生。
今天和大家分享一篇论文,文章主要研究的是通过间歇性聚类点过程学习社交网络用户行为模式。论文引用:Jingfei Zhang, Biao Cai, Xuening Zhu, Hansheng Wang, Ganggang Xu & Yongtao Guan (2023) Learning Human Activity Patterns Using Clustered Point Processes With Active and Inactive States, Journal of Business & Economic Statistics, 41:2, 388-398.
1.引言
近年来,从社交媒体、金融交易和在线零售平台上收集到的大量事件时间数据,吸引了来自不同领域学者的研究兴趣。分析这些数据可以为了解人类的在线活动模式提供有用的见解(Ghose and Han 2011; Sun, Dong, and McIntyre 2017),并有助于制定有效的商业策略,如广告放置和内容推荐。时序点过程模型作为一类强大的时间数据统计学习工具,在最近的统计和机器学习文献中得到了广泛的研究,例如:Karimi等人(2016)、Farajtabar等人(2016)、Farajtabar等人(2017)、Hosseini等人(2017)和Xiao等人(2017)。虽然现有的工作提供了有用的工具,但由于突发事件发生和零星或长时间的不活跃状态之间往往是复杂混合的(Barabasi 2005),从人类活动中建模事件时间数据仍然具有挑战性。文章的主要目标是提出一个灵活的、可解释的建模框架,它可以充分地解决事件模式中的这种异质性。
虽然所提出的框架是通用的,但本文主要是通过分别从推特和新浪微博上收集的两个例子来描述模型。第一个数据集包含了特朗普从2013年1月到2018年4月的发推时间;第二个数据集包含了一个月内大量新浪微博用户的发博时间。在社交媒体上,用户可以生成原创内容或从其他帐户转发内容。这两种不同类型的帖子在数据中作了区分,分别称为原创发帖(original posts)和转发(reposts)。用户的发帖时间往往是聚集的,因为用户与社交媒体网站的互动经常在活跃状态和不活动状态之间交替(Raghavan等人 2014)。在活跃状态期间会产生事件(发帖或转发),通常一个事件持续的时间较短;在非活跃状态期间,下一个活跃状态开始之前不会产生任何事件。因此,事件以集群的形式出现,本文之后将这种集群称为活跃区间(episodes)。此外,在每一活跃区间中,用户倾向于连续发布几个原创帖子或转发,原始帖子和转发子集群交替呈现,将这些子集群称为一个活跃区间中的片段(segment),具体如下图Figure 1所示。
为了对上述的聚类点模式进行建模,现有的方法可以分为两类:霍克斯过程(Hawkes 1971)和考克斯过程(Diggle和Milne 1983)。霍克斯过程是一个自激励过程,这意味着某一事件的发生可能会引发未来事件的发生,它在许多领域内被广泛应用。然而,当事件爆发之间存在较长的不活跃间隔时,霍克斯过程可能并不能很好地拟合,而这种活动模式在现实中经常出现(Wu 等人 2019)。考克斯过程则是一类重随机点过程,包括许多流行的模型作为特殊情况,如对数高斯考克斯过程(Møller, Syversveen, 和Waagepetersen 1998)和散粒噪声考克斯过程(Waagepetersen 2007)。考克斯过程的可解释性比较有限,因为它无法描述活跃和非活跃的交替状态,也无法描述两个事件间的转换机制。
在本文中,提出了一类新的聚类点过程,它在活跃状态和非活跃状态之间交替,同时针对该模型提出了一种复合似然估计方法和参数估计的CLEM算法。
2.模型设定
考虑观测窗口。观测到的事件发生位置记为, 其中是一个取非负整数值的随机变量。假设所有活跃区间以不重叠的形式先后到来(见Figure 1),一个活跃区间中的第一个事件被称为母事件(parent), 而其余的事件被称为子事件(offsprings)。记。定义一个潜在的指示变量, 如果第个事件是母事件(子事件), 则令。对于每个事件, 定义一个二元标签, 则说明它是一个原创发帖(转发)。注意事件位置和原创/转发标签是可以被观测的。然而母事件/子事件的标签是末被观测到的,因为我们无法知道一个事件是否是一个活跃区间中的第一个事件。因此在本文的模型中, 潜在的母事件/子事件标签被视为缺失数据。
假设一个活跃区间以原创发帖或转发开始的概率为或, 这一假设区分了活跃和不活跃的区间。假设一个活跃区间中包含片段的个数为, 一个原创发帖和转发片段中包含的事件数分别为和, 其中, 此处使用的是泊松分布, 但其他产生非负整数的分布也可使用。设, 为相邻事件之间的间隔时间, 其中。设和分别为在给定 、、条件下的概率密度函数, 假设、和是一些末知参数的函数。这三种概率密度函数分别对应了非活跃区间、转发到原创发帖、原创发帖到转发三种不同类型的时间间隔。假设一个新的活跃区间开始的概率是时变的, 设:
虽然许多随机过程模型,如霍克斯过程,都是通过强度函数来构造的,但本文的模型是利用间隔时间来建立的。具体来说,给定事件标签和,假设间隔时间是独立的。然后通过对联合密度函数中的潜在标签(即)进行积分,引入了事件时间之间的依赖性。由于模型是根据间隔时间来设定的,这使它能够描述用户如何在活跃状态和非活跃状态之间转换,以及在活跃状态下二元事件是如何产生的。
3.估计
记活跃区间总数为(即), 第个活跃区间中片段的个数记为, 如果第个活跃区间的第片段是原创发站, 则, 否则。
记。假设第一个事件是一个母事件, 并且最后一个活跃区间的所有事件都包含在中。将作为缺失数据, 则焚淎数据的似然函数可以写为:
为了估计, 直接最大化似然函数在计算上是不现实的, 因为中的元素的数量随呈指数增长。另一种方法是使用EM算法, 将作为缺失数据处理。然而, EM算法中的步需要计算, 这又是难以处理的。为了克服计算上的困难, 文章使用了一种复合似然的估计方法。
将观测窗口分为个子窗口, 每个子窗口的时间间隔为, 即。定义。使用 二元向量和分别表示中的母事件/子事件和原创发帖/转发。在每个子窗口内, 假设第一个事件为母事件并且最后一个活跃区间里所有的事件都在子窗口中。基于以上假设, 可以写出对数复合似然函数为:
在估计时, 一个直接的方法是使用数值方法直接最大化上述对数复合似然函数。这种方法并不可取, 因为它的计算效率和稳定性都很低。本文提出了一种有效和稳定的CLEM算法, 它只需要计算(相对于计算)。该算法 分为以下两步进行:
E步: 给定第次迭代后更新的, 计算:
M步: 最大化, 求得
在步中, 需要计算条件分布, 其计算公式为:
在步中除了外, 所有参数均有一个确定的形式, 这保证了算法的高效。在模 拟研究中的结果证明, 该算法收敛性良好且用时仅为数值方法的1/15。
4.社交媒体实际数据分析
4.1推特数据集
文章将提出的模型应用到了两个实际数据集上进行建模分析,在第一个应用中,研究了特朗普从2013年1月到2018年4月之间的推特数据,描述了他的推特行为在各个方面的变化,如在总统竞选之前、期间和之后的推特率、每次发推的活跃区间长度和日常活动水平。
将所提出的模型与研究窗口中每个月内收集到的推文数据进行拟合,估计的各参数及其变化如下图Figure 4所示,其中标记了两个重要的月,第一次是2015年6月,特朗普宣布竞选总统;第二个是2017年1月,他就职总统。
Figure 4中能得到一些有趣的结论,关于特朗普的推特行为是如何在总统竞选之前、期间和之后演变的。比如:
a.估计的值代表每一活跃区间的推文中,以原创推文开始的概率。由其变化趋势可知,宣布参选之前特朗普在一个活跃区间的发推中,第一个推文是转发和原创的占比相差不大,而宣布参选后原创的占比越来越大。
b.(或)值越大,表示原创推文率(或转发率)越高。由的变化趋势可知特朗普在写每条原创推文上花费的时间越来越多。
c.在特朗普宣布参选之前,他在每个活跃区间中平均发布4-5条推文。这一数字在竞选期间稳步下降,并最终在他上任后稳定在2.5个左右。
d.根据活跃区间的长度变化可知,特朗普每次使用推特时通常要花15-30分钟左右。活跃区间长度随着时间的推移保持相对稳定,但是自担任总统以来略有增加。
此外,通过估计风险函数,可以体现特朗普最喜欢在什么时间发推,具体如下图Figure 5所示。
由Figure 5可知,发推的频率在早上6点到7点左右一直很高,且自担任总体以来,上午的活动水平有所上升。在竞选之前,傍晚的发推频率一直较高,时间集中在下午6点到8点左右。而自竞选开始以来,傍晚的发推明显减少,在担任总统期间则一直处于低位。
4.2新浪微博数据集
在第二个应用中,文章将提出的方法应用于从新浪微博收集的大规模用户数据,使用提出的模型拟合了1714名用户一个月的微博使用数据。对于拟合的危险函数,使用函数型主成分分析来研究其变化模式。下图Figure 6显示了分析中的平均函数和前三个特征函数。
从平均函数的变化可知凌晨1点到6点的活跃水平较低,而高活跃水平出现在上午9到10点和晚上10点到11点。第一个特征函数表明一些用户从上午8点到12点活跃度较高,且有两个高峰,分别在上午和晚上10点。第二个特征函数表明,一些用户只在上午10点或晚上10点有一个活跃高峰。类似地,第三个特征函数表明,一些用户在上午10点左右和晚上10点左右活跃,但在中间的时间内不活跃。
此外,模型的参数估计使我们能够在以下三个指标中量化用户内容生成行为:(i)平均每日风险函数,表示用户使用微博的频率;(ii)每个活跃区间里的平均帖子数量,衡量用户开始使用微博后的活跃水平;(iii)一个活跃区间的平均长度,衡量用户一次使用微博的时间。对于每个度量,k-均值聚类表明有三个用户组,即高、中、低组,具体如下图Figure 7所示。
由Figure 7可知,三个指标的分布均高度偏斜,高值组包含非常少的用户,低值组包含大多数用户。
5.总结
文章提出了一种新的聚类点过程模型,它能很好地描述社交媒体数据的特征,通过这些特征能更好地描述社交媒体上用户的行为模式。该模型基于间隔分布建模,在实际问题中的可解释性和可描述性强。尽管本文主要分析了社交媒体数据,但该模型同样适用于其他领域,比如金融交易、线上零售等。